package request

import "time"

type HostPagination struct {
	Pagination
	Keyword         string `form:"keyword" json:"keyword"`                   // 关键字
	AccountUsername string `form:"account_username" json:"account_username"` // 关联店铺账号
	Status          uint   `form:"status" json:"status"`                     // 状态
}

type HostCreate struct {
	HostIP           string    `form:"host_ip" json:"host_ip"`                       // 主机IP
	HostPort         string    `form:"host_port" json:"host_port"`                   // 主机端口号
	HostUsername     string    `form:"host_username" json:"host_username"`           // 主机登录账号
	HostPassword     string    `form:"host_password" json:"host_password"`           // 主机登录密码
	HostState        uint      `form:"host_state" json:"host_state"`                 // 主机状态(1运行中，0未运行)
	ReleaseStatus    uint      `form:"release_status" json:"release_status"`         // 部署状态(1已部署，0未部署)
	ReleaseDate      time.Time `form:"release_date" json:"release_date"`             // 部署日期
	AccountUsername  string    `form:"account_username" json:"account_username"`     // 店铺用户名
	AccountPassword  string    `form:"account_password" json:"account_password"`     // 店铺加密密码
	AccountOriginPwd string    `form:"account_origin_pwd" json:"account_origin_pwd"` // 店铺原始密码
	Issues           string    `form:"issues" json:"issues"`                         // 问题描述
	Status           uint      `form:"status" json:"status"`                         // 状态
}

type HostUpdate struct {
	ID               uint      `form:"ID" json:"ID"`                                 // 主键ID
	HostIP           string    `form:"host_ip" json:"host_ip"`                       // 主机IP
	HostPort         string    `form:"host_port" json:"host_port"`                   // 主机端口号
	HostUsername     string    `form:"host_username" json:"host_username"`           // 主机登录账号
	HostPassword     string    `form:"host_password" json:"host_password"`           // 主机登录密码
	HostState        uint      `form:"host_state" json:"host_state"`                 // 主机状态(1运行中，0未运行)
	ReleaseStatus    uint      `form:"release_status" json:"release_status"`         // 部署状态(1已部署，0未部署)
	ReleaseDate      time.Time `form:"release_date" json:"release_date"`             // 部署日期
	AccountUsername  string    `form:"account_username" json:"account_username"`     // 店铺用户名
	AccountPassword  string    `form:"account_password" json:"account_password"`     // 店铺加密密码
	AccountOriginPwd string    `form:"account_origin_pwd" json:"account_origin_pwd"` // 店铺原始密码
	Issues           string    `form:"issues" json:"issues"`                         // 问题描述
	Status           uint      `form:"status" json:"status"`                         // 状态
}

type HostUpdateAccountPassword struct {
	AccountUsername  string    `form:"account_username" json:"account_username"`     // 店铺用户名
	AccountPassword  string    `form:"account_password" json:"account_password"`     // 店铺加密密码
	AccountOriginPwd string    `form:"account_origin_pwd" json:"account_origin_pwd"` // 店铺原始密码
}

type HostStatesPagination struct {
	Pagination
	HostIP          string    `form:"host_ip" json:"host_ip"`                        // 主机IP
	AccountUsername string    `form:"account_username" json:"account_username"`      // 店铺用户名
	Keyword         string    `form:"keyword" json:"keyword"`                        // 关键字
	Status          uint      `form:"status" json:"status"`                          // 状态
}

type HostReboot struct {
	HostIP          string    `form:"host_ip" json:"host_ip"`                        // 主机IP
}
